Adwaita: fix view check/radio selected state.
authorLapo Calamandrei <calamandrei@gmail.com>
Tue, 24 Jun 2014 08:25:49 +0000 (10:25 +0200)
committerLapo Calamandrei <calamandrei@gmail.com>
Tue, 24 Jun 2014 08:25:49 +0000 (10:25 +0200)
gtk/resources/theme/Adwaita/_common.scss
gtk/resources/theme/Adwaita/gtk-contained-dark.css
gtk/resources/theme/Adwaita/gtk-contained.css

index cb15d2e4116b0b754dfe50ee03e3f382dd09579c..171f54c596e0dcd3e7db531a67560714445ece37 100644 (file)
@@ -1182,6 +1182,8 @@ GtkSwitch {
 $asset_suffix: if($variant=='dark', '-dark', '');
 @each $w,$a in ('check', 'checkbox'),
                ('radio','radio') {
+
+  //standard checks and radios
   @each $s,$as in ('','-unchecked'),
                   (':hover', '-unchecked-hover'),
                   (':selected', '-unchecked-active'),
@@ -1253,15 +1255,17 @@ $asset_suffix: if($variant=='dark', '-dark', '');
     &:inconsistent {
       -gtk-icon-source: -gtk-icontheme('#{$a}-mixed-symbolic');
     }
-    &:selected {
+    &:selected, &:selected:focus {
+      // :selected:focus not to get overridden by .view style
       color: transparentize($selected_fg_color,0.9);
       &:active {
         color: $selected_fg_color;
         &:backdrop { color: $backdrop_base_color; }
       }
-      &:backdrop {
-        color: transparentize($backdrop_fg_color,0.9);
-      }
+    }
+    &:backdrop {
+      color: transparentize($backdrop_fg_color,0.9);
+      &:selected { color: transparentize($backdrop_base_color,0.9); }
     }
   }
 
@@ -1882,6 +1886,7 @@ GtkColorChooserWidget #add-color-button {
   }
 }
 
+
 /**********************
  * Window Decorations *
  *********************/
index 61eb51630fd3206487f07f0ba9671541565dccf3..fe9032fe328da33e6026534edf95cbc6aef51a0d 100644 (file)
@@ -1485,14 +1485,16 @@ GtkSwitch {
       color: transparent; }
   .view.check:inconsistent {
     -gtk-icon-source: -gtk-icontheme("checkbox-mixed-symbolic"); }
-  .view.check:selected {
+  .view.check:selected, .view.check:selected:focus {
     color: rgba(255, 255, 255, 0.1); }
-    .view.check:selected:active {
+    .view.check:selected:active, .view.check:selected:focus:active {
       color: white; }
-      .view.check:selected:active:backdrop {
+      .view.check:selected:active:backdrop, .view.check:selected:focus:active:backdrop {
         color: #2c2c2c; }
-    .view.check:selected:backdrop {
-      color: rgba(201, 203, 201, 0.1); }
+  .view.check:backdrop {
+    color: rgba(201, 203, 201, 0.1); }
+    .view.check:backdrop:selected {
+      color: rgba(44, 44, 44, 0.1); }
 
 .popover .button.check:hover {
   color: rgba(238, 238, 236, 0.1); }
@@ -1630,14 +1632,16 @@ GtkSwitch {
       color: transparent; }
   .view.radio:inconsistent {
     -gtk-icon-source: -gtk-icontheme("radio-mixed-symbolic"); }
-  .view.radio:selected {
+  .view.radio:selected, .view.radio:selected:focus {
     color: rgba(255, 255, 255, 0.1); }
-    .view.radio:selected:active {
+    .view.radio:selected:active, .view.radio:selected:focus:active {
       color: white; }
-      .view.radio:selected:active:backdrop {
+      .view.radio:selected:active:backdrop, .view.radio:selected:focus:active:backdrop {
         color: #2c2c2c; }
-    .view.radio:selected:backdrop {
-      color: rgba(201, 203, 201, 0.1); }
+  .view.radio:backdrop {
+    color: rgba(201, 203, 201, 0.1); }
+    .view.radio:backdrop:selected {
+      color: rgba(44, 44, 44, 0.1); }
 
 .popover .button.radio:hover {
   color: rgba(238, 238, 236, 0.1); }
index 6365a20f03f4a4759f5f6f1673bf9ebfac813d52..61d7fa2c86cc6a8b3894a057c9c0a74bfc6d5e11 100644 (file)
@@ -1484,14 +1484,16 @@ GtkSwitch {
       color: transparent; }
   .view.check:inconsistent {
     -gtk-icon-source: -gtk-icontheme("checkbox-mixed-symbolic"); }
-  .view.check:selected {
+  .view.check:selected, .view.check:selected:focus {
     color: rgba(255, 255, 255, 0.1); }
-    .view.check:selected:active {
+    .view.check:selected:active, .view.check:selected:focus:active {
       color: white; }
-      .view.check:selected:active:backdrop {
+      .view.check:selected:active:backdrop, .view.check:selected:focus:active:backdrop {
         color: #fcfcfc; }
-    .view.check:selected:backdrop {
-      color: rgba(84, 89, 90, 0.1); }
+  .view.check:backdrop {
+    color: rgba(84, 89, 90, 0.1); }
+    .view.check:backdrop:selected {
+      color: rgba(252, 252, 252, 0.1); }
 
 .popover .button.check:hover {
   color: rgba(46, 52, 54, 0.1); }
@@ -1629,14 +1631,16 @@ GtkSwitch {
       color: transparent; }
   .view.radio:inconsistent {
     -gtk-icon-source: -gtk-icontheme("radio-mixed-symbolic"); }
-  .view.radio:selected {
+  .view.radio:selected, .view.radio:selected:focus {
     color: rgba(255, 255, 255, 0.1); }
-    .view.radio:selected:active {
+    .view.radio:selected:active, .view.radio:selected:focus:active {
       color: white; }
-      .view.radio:selected:active:backdrop {
+      .view.radio:selected:active:backdrop, .view.radio:selected:focus:active:backdrop {
         color: #fcfcfc; }
-    .view.radio:selected:backdrop {
-      color: rgba(84, 89, 90, 0.1); }
+  .view.radio:backdrop {
+    color: rgba(84, 89, 90, 0.1); }
+    .view.radio:backdrop:selected {
+      color: rgba(252, 252, 252, 0.1); }
 
 .popover .button.radio:hover {
   color: rgba(46, 52, 54, 0.1); }